<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

/**
 * 订单表.
 *
 * @ author: zuorenci
 * @ email: 904725327@qq.com
 * @ date: 2017/10/24 21:01
 */
class TuanOrder extends Model
{
    protected $table = 'tuan_order';

    public $timestamps = false;

    protected $fillable = [
        'order_id', //ID
        'user_id', //用户id
        'tuan_id', //团购id
        'shop_id', //商铺id
        'num', //数量
        'price', //实付价格
        'total_price', //原价格
        'settlement_price', //扣除平台税后的价格
        'integral', //积分价格
        'discount', //店铺折扣
        'order_num', //订单号码
        'order_status', //订单状态 1待使用 2待评价 3已评价 4已取消 默认为0
        'pay_status', //支付状态 1未支付 2已支付 -1退款中 -2退款完成 默认为1未支付
        'delete', //删除状态1正常2删除
        'order_type', //1为团购订单2为优惠买单3为充值订单
        'tuan_type', //订单类型1普通2积分秒杀3积分优惠
        'pay_type', //1为余额2为积分秒杀3积分优惠
        'create_time', //创建时间
        'pay_time', //支付时间
        'update_time', //订单更新时间
        'title', //订单名称
        'in_trans', //事务标识0事务未开始，1事务处理中，2事务成功
    ];

    //订单和消劵表
    public function code()
    {
        return $this->hasOne('App\\Models\\TuanCode', 'order_id', 'order_id');
    }

    public function shop()
    {
        return $this->hasOne('App\\Models\\Shop', 'shop_id', 'shop_id');
    }

    //关联团购从表
    public function tuan_info()
    {
        return $this->hasOne('App\\Models\\TuanInfo', 'tuan_id', 'tuan_id');
    }

    public function active()
    {
        return $this->hasOne('App\\Models\\Active', 'shop_id', 'shop_id');
    }

    //团购套餐
    public function combos()
    {
        return $this->hasMany('App\\Models\\Combo', 'tuan_id', 'tuan_id');
    }

    //关联团购从表
    public function user()
    {
        return $this->hasOne('App\\Models\\User', 'userID', 'user_id');
    }

    //关联团购券表
    public function tuan_code()
    {
        return $this->hasMany('App\\Models\\TuanCode', 'order_id', 'order_id');
    }
}
